/** 
 *  
 * @api model.volatile 
 * @apiGroup model.volatile
  * 
  * @apiParamExample {json} 示例
  * 
const Model = types
    .model('Model')
    .volatile(self => ({
        anyData: {} as any
    }))
    .actions(self => ({
      runInAction (fn: () => any) {
        fn();
      }
    }));
    
const model = Model.create();
 
autorun(() => console.log(model.anyData));
 
model.runInAction(() => {
  model.anyData = {a: 1};
});
 
model.runInAction(() => {
  model.anyData.a = 2;
});

  *
  * @apiSuccessExample  {json}方法说明
  * {
  * 在MST中，props对应的状态都是可持久化的，也就是可以序列化为标准的JSON数据。并且，props对应的状态必须与props的类型相匹配。

如果需要在Model中存储无需持久化，并且数据结构或类型无法预知的动态数据，可以设置为Volatile State。
和actions及views一样，model.volatile方法也要传入一个参数为Model实例的方法，并返回一个对象。

运行上面代码，可得到如下输出：

代码中使用Mobx的autorun方法监听并打印model.anyData的值，图中一共看到2次输出：

anyData的初始值
第一次更新anyData后的值
但是第二次为anyData.a赋值并没有执行autorun。
  * }
  */  
